Media storage devices (such as DVDs) for storing video may include additional video data intended to be displayed on top of, or over, the main video data. This additional video data is known as “sub-picture” information and may include menus, sub-titles, Karaoke, simple animation, etc. Sub-picture information may be stored separately from the main video and audio data, as it may or may not be displayed depending on the user's choice.
It is generally preferred that sub-picture information take up as little memory space as possible in the media, and consume as little of the system's memory and processor resources as possible. Typical DVDs support up to 32 separate sub-picture data streams, any one stream being limited to 3.36 Mbps bandwidth (video bit rate is 9.8 Mbps or less). To meet this bandwidth requirement, and to simplify sub-picture decoding, sub-pictures are composed with run length encoded bitmaps. Each pixel in the decoded sub-picture image is assigned a value from a fixed YUV palette of 16, each entry having a 4 byte color value. Run length coding (“RLC”) permits runs of data, or, consecutive instances of a data value, to be represented as a single data value and a run count rather than as the original string of data values in the run. RLC is particularly useful on image data that contains many such runs, such as for example, line drawings, simple graphic images, icons, etc.
The visual quality of sub-picture images may depend on display resolutions. Sub-picture is decoded and then combined with the main video for display on a computer monitor or television. The combination of sub-picture information and main video may typically be performed using a process called “alpha-blending.” Alpha-blending may be done in the YUV420 domain and using only intensity, luma, or all components. One problem associated with typical methods for displaying sub-picture information is similar to an effect that occurs when displaying analog data that is represented in a digital system. This effect, known as “aliasing” may make a line at an angle appear with jagged edges or blocky patterns. Detail in the analog signal that is between the discrete digital values (quantization) may not be displayed causing the image to have the jagged staircase appearance. Similarly, sub-pictures may produce aliasing effects when displayed on a screen having a higher resolution.
In order to reduce the visual effect of aliasing, the sub-picture data may be processed with an anti-aliasing filter, or a low-pass filter (“LPF”). When the sub-picture is combined, during a process known as “alpha-blending,” with the main video after anti-aliasing, undesired artifacts may appear at the dark to light color transitions in the sub-picture image. These artifacts may appear as bright spots in the dark background.
It would be desirable to eliminate the undesired anti-aliasing effects when sub-picture images are blended with main video images.